//package com.shenfc.fxzj.util;
//
//import org.apache.commons.net.ftp.FTPClient;
//import org.apache.commons.net.ftp.FTPFile;
//import org.apache.commons.net.ftp.FTPReply;
//import org.slf4j.Logger;
//import org.slf4j.LoggerFactory;
//
//import java.io.*;
//
//public class FtpUtil {
//    private final static Logger log = LoggerFactory.getLogger(FtpUtil.class);
//
//    /**
//     *
//     * @param path 上传到ftp服务器哪个路径下
//     * @param addr 地址
//     * @param port 端口号
//     * @param username 用户名
//     * @param password 密码
//     * @return
//     * @throws Exception
//     */
//    private static boolean connect(FTPClient ftp,String path,String addr,int port,String username,String password) throws Exception {
//        boolean result = false;
//        int reply;
//        ftp.connect(addr,port);
//        ftp.login(username,password);
//        reply = ftp.getReplyCode();
//        if (!FTPReply.isPositiveCompletion(reply)) {
//            ftp.disconnect();
//            return result;
//        }
//        ftp.changeWorkingDirectory(path);
//        result = true;
//        return result;
//    }
//    /**
//     * Description: 向FTP服务器上传文件
//     * @param url FTP服务器hostname
//     * @param port FTP服务器端口
//     * @param username FTP登录账号
//     * @param password FTP登录密码
//     * @param path FTP服务器保存目录
//     * @param filename 上传到FTP服务器上的文件名
//     * @param input 输入流
//     * @return 成功返回true，否则返回false
//     */
//    public static boolean uploadFile(String url,int port,String username, String password, String path, String filename, InputStream input) {
//        boolean success = false;
//        FTPClient ftp = new FTPClient();
//        try {
//            success = connect(ftp, path, url, port, username, password);
//            if(!success){
//                return success;
//            }
//            ftp.storeFile(filename, input);
//            input.close();
//            ftp.logout();
//            success = true;
//        } catch (Exception e) {
//            log.error(url+"---FTP上传文件",e);
//        } finally {
//            if (ftp.isConnected()) {
//                try {
//                    ftp.disconnect();
//                } catch (IOException ioe) {
//                }
//            }
//        }
//        return success;
//    }
//
//    /**
//     * Description: 从FTP服务器下载文件
//     * @param url FTP服务器hostname
//     * @param port FTP服务器端口
//     * @param username FTP登录账号
//     * @param password FTP登录密码
//     * @param path FTP服务器上的相对路径
//     * @param fileName 要下载的文件名
//     * @param localPath 下载后保存到本地的路径
//     * @return
//     */
//    public static boolean downFile(String url, int port,String username, String password, String path,String fileName,String localPath) {
//        boolean success = false;
//        FTPClient ftp = new FTPClient();
//        try {
//            success = connect(ftp, path, url, port, username, password);
//            if(!success){
//                return success;
//            }
//            FTPFile[] fs = ftp.listFiles();
//            for(FTPFile ff:fs){
//                if(ff.getName().equals(fileName)){
//                    File localFile = new File(localPath+"/"+ff.getName());
//                    OutputStream is = new FileOutputStream(localFile);
//                    ftp.retrieveFile(ff.getName(), is);
//                    is.close();
//                }
//            }
//            ftp.logout();
//            success = true;
//        } catch (Exception e) {
//            log.error(url+"---FTP下载文件",e);
//        } finally {
//            if (ftp.isConnected()) {
//                try {
//                    ftp.disconnect();
//                } catch (IOException ioe) {
//                }
//            }
//        }
//        return success;
//    }
//    public static void main(String[] args) throws Exception{
////        downFile("121.199.24.234",21,"read_01","bbkb+123","/mnt/xvdb1/manager", "app2.log","d:");
//        File file =new File("d:/app.log");
//        FileInputStream fileInputStream=new FileInputStream(file);
//        uploadFile("106.15.184.120",21,"kkk975202012","kkk@97520","/mnt/xvda1/manager","app2.log",fileInputStream);
//
//    }
//}